LessThan Function

private function LessThan(time1, time2) result(less)

return true if time1 is less than time2

Arguments

Type IntentOptional Attributes Name
type(DateTime), intent(in) :: time1
type(DateTime), intent(in) :: time2

Return Value logical


Variables

Type Visibility Attributes Name Initial
type(DateTime), public :: tempTime1
type(DateTime), public :: tempTime2

Source Code

FUNCTION LessThan &
!
(time1, time2) &
!
RESULT (less)

IMPLICIT NONE

! Arguments with intent(in):
TYPE (DateTime), INTENT(IN) :: time1, time2

! Local declarations:
LOGICAL :: less
TYPE (DateTime) :: tempTime1, tempTime2

!------------end of declaration------------------------------------------------

!converto to utc
tempTime1 = ToUtc (time1)
tempTime2 = ToUtc (time2)

IF(tempTime1 % year < tempTime2 % year)           THEN
   less = .TRUE.
ELSE IF(tempTime1 % year > tempTime2 % year)      THEN
   less = .FALSE.
ELSE IF(tempTime1 % month < tempTime2 % month)    THEN
   less = .TRUE.
ELSE IF(tempTime1 % month > tempTime2 % month)    THEN
   less = .FALSE.
ELSE IF(tempTime1 % day < tempTime2 % day)        THEN
   less = .TRUE.
ELSE IF(tempTime1 % day > tempTime2 % day)        THEN
   less = .FALSE.
ELSE IF(tempTime1 % hour < tempTime2 % hour)      THEN
   less = .TRUE.
ELSE IF(tempTime1 % hour > tempTime2 % hour)      THEN
   less = .FALSE.
ELSE IF(tempTime1 % minute < tempTime2 % minute)  THEN
   less = .TRUE.
ELSE IF(tempTime1 % minute > tempTime2 % minute)  THEN
   less = .FALSE.
ELSE IF(tempTime1 % second < tempTime2 % second)  THEN
   less = .TRUE.
ELSE
   less = .FALSE.
END IF

END FUNCTION LessThan